/* tslint:disable */
/* eslint-disable */

import React, { CSSProperties, SVGAttributes, FunctionComponent } from 'react';
import { getIconColor } from './helper';

interface Props extends Omit<SVGAttributes<SVGElement>, 'color'> {
  size?: number;
  color?: string | string[];
}

const DEFAULT_STYLE: CSSProperties = {
  display: 'block',
};

const IconAAddressbook: FunctionComponent<Props> = ({ size, color, style: _style, ...rest }) => {
  const style = _style ? { ...DEFAULT_STYLE, ..._style } : DEFAULT_STYLE;

  return (
    <svg viewBox="0 0 1024 1024" width={size + 'px'} height={size + 'px'} style={style} {...rest}>
      <path
        d="M832 96a96 96 0 0 1 95.84 90.368L928 192v640a96 96 0 0 1-90.368 95.84L832 928H192a96 96 0 0 1-95.84-90.368L96 832v-64a32 32 0 0 1 63.776-3.744L160 768v64a32 32 0 0 0 28.256 31.776L192 864h640a32 32 0 0 0 31.776-28.256L864 832V192a32 32 0 0 0-28.256-31.776L832 160H192a32 32 0 0 0-31.776 28.256L160 192v64a32 32 0 0 1-63.776 3.744L96 256V192a96 96 0 0 1 90.368-95.84L192 96h640zM512 576c94.848 0 180.512 22.208 256.352 66.688a64 64 0 0 1 31.424 49.984l0.224 5.216V768a32 32 0 0 1-63.776 3.744L736 768v-70.08l-11.712-6.624C661.44 657.12 590.784 640 512 640c-78.784 0-149.408 17.12-212.288 51.296L288 697.888V768a32 32 0 0 1-63.776 3.744L224 768v-70.08a64 64 0 0 1 31.648-55.232C331.488 598.208 417.152 576 512 576zM160 608a32 32 0 0 1 3.744 63.776L160 672H96a32 32 0 0 1-3.744-63.776L96 608h64z m0-128a32 32 0 0 1 3.744 63.776L160 544H96a32 32 0 0 1-3.744-63.776L96 480h64z m352-256a160 160 0 1 1 0 320 160 160 0 0 1 0-320z m0 64a96 96 0 1 0 0 192 96 96 0 0 0 0-192zM160 352a32 32 0 0 1 3.744 63.776L160 416H96a32 32 0 0 1-3.744-63.776L96 352h64z"
        fill={getIconColor(color, 0, '#333333')}
      />
    </svg>
  );
};

IconAAddressbook.defaultProps = {
  size: 18,
};

export default IconAAddressbook;
